package com.naiterui.ehp.bs.b2c.order.vo;

import javax.validation.constraints.NotNull;

import lombok.Data;
import lombok.NoArgsConstructor;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * <pre>
 *     发票相关
 * </pre>
 *
 * @author wangzehao
 * @date 2019-01-10 15:40
 * @since 1.0.0
 */
@Data
@NoArgsConstructor
@ApiModel(value = "InvoiceVO", description = "发票信息")
public class InvoiceVO implements java.io.Serializable {
    private static final long serialVersionUID = -6875912953871297691L;


    ///////////////////////////// 是否需要发票 /////////////////////////////////
    /**
     * 是否需要发票 不需要
     */
    public static final int INVOICE_NO_NEED = 0;

    /**
     * 是否需要发票 需要
     */
    public static final int INVOICE_NEED = 1;

    /**
     * 是否开具发票 0:开具发票  1:不开发票
     */
    @NotNull(message = "是否开具发票必须填写")
    @ApiModelProperty(value = "是否需要发票(0:不需要,1:需要)")
    private Integer isInvoice;

    /**
     * 发票类型 0:电子发票 1:纸质发票
     */
    @NotNull(message = "没有填写发票类型")
    @ApiModelProperty(value = "发票类型 0:电子发票 1:纸质发票")
    private Integer type;

    /**
     * 发票抬头类型 0:个人 1:单位
     */
    @NotNull(message = "发票抬头类型不能为null")
    @ApiModelProperty(value = "发票抬头类型 0:个人 1:单位")
    private Integer titleType;

    /**
     * 发票抬头
     */
    @ApiModelProperty(value = "发票抬头")
    private String title;

    /**
     * 税号
     */
    @ApiModelProperty(value = "税号")
    private String taxNo;
    /**
     * 收票人手机号
     */
    @ApiModelProperty(value = "收票人手机号")
    private String phone;

    /**
     * 收票人邮箱
     */
    @ApiModelProperty(value = "收票人邮箱")
    private String email;

    /**
     * 发票内容
     */
    @ApiModelProperty(value = "发票内容")
    private String content;

}
